package models

import (
	"time"

	"gorm.io/gorm"
)

// UserRole 用户角色关联模型
type UserRole struct {
	ID        int64     `gorm:"column:id;primaryKey;autoIncrement" json:"id"`
	UserID    int64     `gorm:"column:user_id;not null" json:"user_id"`
	RoleID    int64     `gorm:"column:role_id;not null" json:"role_id"`
	CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP" json:"created_at"`
}

// TableName 指定表名
func (UserRole) TableName() string {
	return "user_roles"
}

// BeforeCreate GORM 钩子：创建前设置创建时间
func (ur *UserRole) BeforeCreate(tx *gorm.DB) error {
	ur.CreatedAt = time.Now()
	return nil
}
